﻿//////////////////////////////////////////////////////////////////////////////
//
//  Copyright © 1998-2024 Glodon Company Limited.  All rights reserved.
//
//  Use of this software is subject to the terms of the Glodon license
//  agreement provided at the time of installation or download, or which
//  otherwise accompanies this software in either electronic or hard copy form.  
//
//////////////////////////////////////////////////////////////////////////////


#pragma once
#include <cstdint>

namespace gcmp
{
    typedef enum
    {
        IC_RETAIN = 0,              //保留在导入的文档中定义的颜色
        IC_BLACK_AND_WHITE,         //以黑白方式导入文档
        IC_REVERSE                  //将来自导入文件的所有线和文字对象的颜色反转
    } EnImportColour;

    typedef enum
    {
        ILL_VISIBLE = 0,         //可见
        ILL_ALL,                 //全部
        ILL_ASSIGN               //指定
    } EnImportLayerOrLevel;

    typedef enum
    {
        IU_MILLIMETER = 0,       //毫米
        IU_CENTIMETER,           //厘米
        IU_DECIMETER,            //分米
        IU_METER,                //米
        IU_INCH,                 //英寸
        IU_FOOT,                 //英尺
        IU_SELF_CHECK,           //自动检测
        IU_USER_DEFINED,         //自定义
    } EnImportUnit;

    typedef enum
    { 
        IL_AUTO_ORIGINTOORIGIN = 0,      //将导入项的全局原点放置在项目的内部原点上
        IL_MANUAL_CENTER,                //导入的文件的模型包围盒中心，位于光标的中心
        IL_AUTO_CENTERTOCENTER,          //将导入项的模型中心，放置在视图范围的中心
        IL_MANUAL_ORIGIN,                //导入的文件的原点位于光标的中心
    } EnImportLocate;

    // Dxf文档的单位
    typedef enum
    {
        eDxfUnitUndefined    = 0,
        eDxfUnitInches       = 1,
        eDxfUnitFeet         = 2,
        eDxfUnitMiles        = 3,
        eDxfUnitMillimeters  = 4,
        eDxfUnitCentimeters  = 5,
        eDxfUnitMeters       = 6,
        eDxfUnitKilometers   = 7,
        eDxfUnitMicroinches  = 8,
        eDxfUnitMils         = 9,
        eDxfUnitYards        = 10,
        eDxfUnitAngstroms    = 11,
        eDxfUnitNanometers   = 12,
        eDxfUnitMicrons      = 13,
        eDxfUnitDecimeters   = 14,
        eDxfUnitDekameters   = 15,
        eDxfUnitHectometers  = 16,
        eDxfUnitGigameters   = 17,
        eDxfUnitAstronomical = 18,
        eDxfUnitLightYears   = 19,
        eDxfUnitParsecs      = 20
    } EnDxfDocUnit;

    // 线型缩放比例模式
    typedef enum
    {
        UseGlobalValue = 0,  /// < 使用全局的线型比例
        UseRealValue = 1   /// < 使用真实的线型比例
    } EnImportLineTypeScaleMode;
}
